import * as api from "@/api/permission"
//引入需要校验的路由
import allRoutes from "@/router/generateRoute"
//把recursion函数递归创建用户路由的方法引入
import recurionRoutes from "@/router/recursionRoutes";
//引入路由
import router from "@/router";
//引入动态路由
import dynamicRoute from "@/router/dynamicRoutes";
let routes = allRoutes.find(route => route.name === "home")
export default {
    namespaced: true,
    state: {
        userMenu: []
    },
    getters: {},
    mutations: {
        //设置用户菜单
        SET_USER_MENU(state, payload) {
            state.userMenu = [...payload]
            //动态添加路由，使用router.addRoute这个方法
            dynamicRoute.children = [...dynamicRoute.children, ...payload]
            router.addRoute(dynamicRoute)
        }
    },
    actions: {
        //获取远程菜单
        FETCH_MENU_LIST({ commit }) {
            return api.getMenuApi()
                .then(res => {
                    console.log(res.data.menuList);
                    let userMenu = recurionRoutes(res.data.menuList, routes.children)
                    commit('SET_USER_MENU', userMenu)
                })
        }
    },
    modules: {},
};
